//入口文件
import SMERouter from "sme-router";
//html,ejs文件引入会变成字符串
import loginView from "$v/login";
import advView from "$v/adv";
import advListView from "$v/advList"
import adminListView from "$v/adminList"
// 实例化一个路由对象，冰传入一级路由的作用区域（是一个id）
const router = new SMERouter("app", "html5");
//配置路由,路由默认是哈希路由访问需要在前面加个#号，如果不想加就需要前后端配合设置，对history路由不做响应，因为不加引号就会发起请求
router.route("/login", (request, response, next) => {
    /*
    request:请求对象，主要包含了请求的路径地址和其他传参的参数
    response。响应对象，只要包含了响应的方法，比如render方法，响应一个渲染
    */
    response.render(loginView())

})
//将一级路由传入指针对象，让其携带者一级路由访问二级路由
router.route("/adv", (request, response, next) => {
    next(advView({
        //response上的subRoute可以在页面留下一个标记，表示二级路由的内容会在此展现
        subRoute: response.subRoute()
    }))
})
//二级路由，在设置二级路由的时候，依赖的路径会产生变化，需要在出口加上publicPath上设置根目录的起始位置
router.route("/adv/advList", (request, response, next) => {
    response.render(advListView())
})
router.route("/adv/admin", (request, response, next) => {
    response.render(adminListView())
})